// 二次封装axios
import axios from "axios";
let requests = axios.create({
  baseURL: 'http://124.71.47.110:8089/api',
  // baseURL: 'http://127.0.0.1:8089/api',
  timeout: 8000
});



// 添加请求拦截器
requests.interceptors.request.use(
  function (config) {
    // 在发送请求之前做些什么，例如添加认证信息等
    config.headers['Authorization'] = 'Bearer ' + sessionStorage.getItem("token"); // 添加请求头
    return config;
  },
  function (error) {
    // 对请求错误做些什么
    return Promise.reject(error);
  }
);


import { ElMessage } from "element-plus";
//响应拦截器
requests.interceptors.response.use(
  function (response) {
    // 对响应数据做点什么
    console.log("响应回来的数据", response);
    return response.data;
  },
  function (error) {
    // 对响应错误做点什么
    console.log(error, "响应错误");
    // 权限问题 token不存在或者过期
    if (error.response.status == 403) {
      // 清除token
      localStorage.removeItem("token");
      // 清空缓存
      localStorage.clear();
      // 跳转到登录页面
      router.push("/login");
      // 提示用户
      ElMessage.error("登录已过期，请重新登录");
    }
    return Promise.reject(error);
  }
);



export default requests;